package com.practice.chatroom;

import java.net.Socket;

/** 会话信息 */
public class SessionBean {

    /** 用户名 */
    private String username;
    /** websocket长连接 */
    private Socket wsSocket;
    /** 强制下线时刻 */
    private long expireTime;
    /** 会话产生时刻 */
    private long sesseionBirth;

    /**
     * 实例化一份会话信息
     * 
     * @param username      用户名
     * @param wsSocket      websocket长连接
     * @param expireTime    强制下线时刻
     * @param sesseionBirth 会话产生时刻
     */
    public SessionBean(String username, Socket wsSocket, long expireTime, long sesseionBirth) {
        this.username = username;
        this.wsSocket = wsSocket;
        this.expireTime = expireTime;
        this.sesseionBirth = sesseionBirth;
    }

    /**
     * 得到会话用户名
     * 
     * @return 用户名
     */
    public String getUsername() {
        return username;
    }

    /**
     * 得到会话的websocket连接
     * 
     * @return ws连接
     */
    public Socket getWsSocket() {
        return wsSocket;
    }

    /**
     * 得到强制下线时刻
     * 
     * @return 强制下线时刻
     */
    public long getExpireTime() {
        return expireTime;
    }

    /**
     * 得到会话产生时刻
     * 
     * @return 会话产生时刻
     */
    public long getSesseionBirth() {
        return sesseionBirth;
    }

    /**
     * 设置会话的用户名
     * 
     * @param username 用户名
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * 设置会话的websocket连接
     * 
     * @param wsSocket websocket连接
     */
    public void setWsSocket(Socket wsSocket) {
        this.wsSocket = wsSocket;
    }

    /**
     * 设置会话的强制下线时刻
     * 
     * @param expireTime 强制下线时刻
     */
    public void setExpireTime(long expireTime) {
        this.expireTime = expireTime;
    }

    /**
     * 设置会话的产生时刻
     * 
     * @param sesseionBirth 会话的产生时刻
     */
    public void setSesseionBirth(long sesseionBirth) {
        this.sesseionBirth = sesseionBirth;
    }
}